From f0522e9944a314aae812274e48e972f28cb8bee1 Mon Sep 17 00:00:00 2001 From: Daniel Boles Date: Thu, 31 Aug 2017 20:19:58 +0100 Subject: [PATCH] Window: Connect screen signals properly in init() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Do not connect to get_settings_for_screen() if we have no screen… Use g_signal_connect(), not connect_object(), to match how set_screen() makes these same connections, and how finalize() already disconnects. https://bugzilla.gnome.org/show_bug.cgi?id=705640 --- gtk/gtkwindow.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c index 535a3f2f1a..72db9a8e0f 100644 --- a/gtk/gtkwindow.c +++ b/gtk/gtkwindow.c @@ -1695,14 +1695,16 @@ gtk_window_init (GtkWindow *window) gtk_window_update_debugging (); if (priv->screen) - g_signal_connect_object (priv->screen, "composited-changed", - G_CALLBACK (gtk_window_on_composited_changed), window, 0); + { + g_signal_connect (priv->screen, "composited-changed", + G_CALLBACK (gtk_window_on_composited_changed), window); #ifdef GDK_WINDOWING_X11 - g_signal_connect_object (gtk_settings_get_for_screen (priv->screen), - "notify::gtk-application-prefer-dark-theme", - G_CALLBACK (gtk_window_on_theme_variant_changed), window, 0); + g_signal_connect (gtk_settings_get_for_screen (priv->screen), + "notify::gtk-application-prefer-dark-theme", + G_CALLBACK (gtk_window_on_theme_variant_changed), window); #endif + } widget_node = gtk_widget_get_css_node (GTK_WIDGET (window)); priv->decoration_node = gtk_css_node_new (); -- 2.30.2